2 System Configuration

2.1 CPU Block Diagram

2.2 Complete Block Diagram

2.3 Memory Configuration and Access Width

Memory Type Bus Width DMA CPU
Read Width Write Width Read Width Write Width
OAM 32 16/32 16/32 16/32 16/32
Palette RAM 16 16/32 16/32 16/32 16/32
VRAM 16 16/32 16/32 16/32 16/32
CPU Internal Working RAM 32 16/32 16/32 8/16/32 8/16/32
CPU External Working RAM 16 16/32 16/32 8/16/32 8/16/32
Internal registers 32 16/32 16/32 8/16/32 8/16/32
Game Pak ROM (Mask ROM, Flash Memory) 16 16/32 16/32 8/16/32 16/32
Game Pak RAM (SRAM, Flash Memory) 8 -- -- 8 8

Good execution efficiency is obtained when programs that operate from the Game Pak use 16-bit instructions (16-bit compiler), and those that operate from CPU Internal Working RAM use 32-bit instructions (32-bit compiler).

2.4 Little-Endian

In the AGB CPU, memory addresses are allocated in 8-bit increments, and little-endian format is used in implementing the 8-, 16-, and 32-bit access widths.